package com.dog.basics.bean.vo.api.mtkj;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.math.BigDecimal;
import java.util.List;

/**
 * <p>
 * 订单表
 * </p>
 *
 * @author wph
 * @since 2020-11-09
 */
@Data
public class ApiShopOrderVo {

    /**
     * 订单id
     */
    @ApiModelProperty(value = "订单标识", dataType = "Long")
    private Long id;
    /**
     * 订单类型: 0送货上门 1:自提
     */
    @ApiModelProperty(value = "订单类型: 0送货上门 1:自提", dataType = "String", required = false)
    private Integer orderFrom;

    /**
     * 订单编号
     */
    @ApiModelProperty(value = "订单编号", dataType = "Long")
    private String orderNo;
    /**
     * 用户ID
     */
    @ApiModelProperty(value = "用户ID", dataType = "Long")
    private Long userId;
    /**
     * 用户名称
     */
    @ApiModelProperty(value = "用户名称", dataType = "Long")
    private String userName;

    /**
     * 店铺ID
     */
    @ApiModelProperty(value = "店铺ID", dataType = "Long")
    private Long shopId;

    /**
     * 店铺名称
     */
    @ApiModelProperty(value = "店铺名称", dataType = "String")
    private String shopName;

    /**
     * 订单备注
     */
    @ApiModelProperty(value = "订单备注", dataType = "String")
    private String buyerMessage;

    /**
     * 订单优惠券支付金额
     */
    @ApiModelProperty(value = "订单优惠券支付金额", dataType = "BigDecimal")
    private BigDecimal couponMoney;


    /**
     * 订单实付金额
     */
    @ApiModelProperty(value = "订单实付金额", dataType = "BigDecimal")
    private BigDecimal payMoney;

    /**
     * 订单总数量
     */
    @ApiModelProperty(value = "订单总数量", dataType = "Integer")
    private Integer num;

    /**
     * 订单状态: 0-待支付  1-已支付  2-申请退款中 3-退款拒绝 4-退款完成 5-已关闭 6:待发货  7待收货 8完成
     */
    @ApiModelProperty(value = "订单状态: 0-待支付  1-已支付  2-申请退款中 3-退款拒绝 4-退款完成 5-已关闭 6:待发货  7待收货 8完成", dataType = "Integer")
    private Integer refundStatus;

    /**
     * 是否评价 0为未评价 1为已评价
     */
    @ApiModelProperty(value = "是否评价 0为未评价 1为已评价", dataType = "Integer", required = false)
    private Integer isEvaluate;
    /**
     * 订单付款时间
     */
    @ApiModelProperty(value = "订单付款时间", dataType = "Long")
    private Long payTime;


    /**
     * 订单添加时间
     */
    @ApiModelProperty(value = "订单添加时间", dataType = "Long")
    private Long createTime;

    /**
     * 订单完成时间
     */
    @ApiModelProperty(value = "订单完成时间", dataType = "Long")
    private Long finishTime;

    /**
     * 订单子项
     */
    @ApiModelProperty(value = "订单子项", dataType = "List<ApiOrderGoodsVo>")
    private List<ApiOrderGoodsVo> apiOrderGoodsVo;



}
